#ifndef LISOUNDDEVICEINFO_H
#define LISOUNDDEVICEINFO_H

#include <QObject>
#include <QAudioDeviceInfo>
#include <QJsonObject>
#include <QJsonArray>
#include <QJsonValue>
#include <QJsonDocument>
#include <QString>
#include <QDebug>

class LiSoundDeviceInfo : public QObject
{
    Q_OBJECT
public:
    explicit LiSoundDeviceInfo(QObject *parent = 0);
    Q_INVOKABLE QString getDeviceNameArray();
    Q_INVOKABLE QString getDeviceByteOrdersObject (int index);
    Q_INVOKABLE QString getDeviceChannelCountsObject (int index);
    Q_INVOKABLE QString getDeviceCodecsObject (int index);
    Q_INVOKABLE QString getDeviceSampleRatesObject (int index);
    Q_INVOKABLE QString getDeviceSampleSizesObject (int index);
    Q_INVOKABLE QString getDeviceSampleTypesObject (int index);
signals:

public slots:

private:
    QAudioDeviceInfo getDeviceInfoObject(int index);
    QString objectArraytoJson(QString name,QJsonArray &jsonArray);
};

#endif // LISOUNDDEVICEINFO_H
